#ifndef __DSTH_REACTOR_THREAD_POOL_H__
#define __DSTH_REACTOR_THREAD_POOL_H__

#include <vector>
#include "ReactorThread.h"

namespace dsth {

class ReactorThreadPool {
public:
    ReactorThreadPool(int num);
    ~ReactorThreadPool();
    ReactorThreadPool* Run();
    EventLoop* GetNextEventLoop();
    void SendWakeupPort();
private:
    const int thread_num_;
    int index_;
    std::vector<ReactorThread*> pool_;
};

} // namespace
#endif // __DSTH_REACTOR_THREAD_POOL_H__
